草庐IT

c++ - 少走弯路的API Hooking

全部标签

c++ - 使用 CMake 构建项目,包括使用不同构建系统的其他库

我正在开发一个开源项目,该项目使用C作为库,使用C++作为GUI,使用Cmake来管理构建。这个项目刚刚开始,只有几个文件。我可以在我的linux开发环境和Windows上成功生成makefiles,我可以使用CMake生成VisualStudio项目文件。到目前为止一切正常。随着项目的发展,我正处于需要测试框架的阶段。我对UnitTest++有很好的经验,它将在所有流行的平台上运行良好。问题是,我不知道如何将UnitTest++构建与CMake集成(它们在linux上使用makefile,而visualstudio项目文件可用于windows)。在构建代码之前,我需要构建UnitTe

c++ - 交叉编译 gcc

我正在按照说明进行操作here用于交叉编译GCC。我在Mac上。当我从gcc源文件夹运行此命令时:./configure--target=i586-elf--prefix=/usr/local/cross--disable-nls--without-headers--enable-languages=c,ada,c++,fortran,java,objc,obj-c++,treelang我收到这个错误:configure:error:GMP4.1andMPFR2.2.1ornewerversionsrequiredbyfortran.当我将命令更改为此(我无法编译GMP)时:./con

c++ - 需要帮助使用 GTK2 为 wxWidgets (wxGTK) 编写 "backgroundless"小部件

我的问题与GTK2和wxWidgets(实际上是wxGTK)有关。在wxGTK中,所有控件默认都是灰色背景,并且无法移除。我有一个带有自定义子控件的纹理面板,我的每个控件都有一个我无法删除的难看的灰色边框。我只能设置一些背景颜色并使面板的颜色相同。所以我需要wxGTK中的一种“无背景”控件。在Linux之前,我有多年的MSWindows经验。据我所知,在MSWindows中,每个窗口控件(即小部件)都会收到一个WM_ERASEBKGND消息(事件),然后是WM_PAINT消息。背景是在WM_ERASEBKGND事件处理程序中绘制的,因此您可以轻松地保持父控件的背景不变,并通过简单地重写

c++ - 将 Lua 与 Visual Studio 2010 链接起来

我们使用Lua(www.lua.org)脚本让用户自定义我们用C++编写的服务器软件。目前我们正在将项目的32位Windows版本移植到VisualStudio2010。一旦VS2008一切正常,我们认为升级过程不会有问题。不幸的是,每当我们尝试将lualib(作为dll)链接到我们在VS2010中的项目时,链接器都找不到lua函数(错误消息如下所示)。似乎某些调用约定在2010上是错误的,例如应用程序可能正在寻找前缀为“_”的lua函数。要从我们的项目模块(C++)访问lua函数(用C编写),我们使用这个:extern"C"{#include"lua/src/lua.h"#inclu

c++ - 如何使用 C++ 或其他一些 PL 构建 C 解释器

我正在考虑为C语言创建一个解释器。我已经掌握了这个link但我想知道是否有更好的方法来做到这一点。现在,我正在考虑使用C++实现它。但是,如果有任何其他语言可以更好地完成这项任务,那么我愿意为此目的而更改为该语言。我正在构建用于静态分析目的的解释器,这将需要诸如语句标记、地址存储、堆地址存储和此分析通常需要的其他操作之类的操作。任何可以帮助我入门的链接都很棒。请分享您的想法,我将不胜感激,因为这对我来说是一个全新的领域。谢谢大家 最佳答案 静态分析某些代码的工具不是解释器。无论如何,编写这样的工具不是一件小事,它需要很好地了解编译器

c++ - xgettext - 提取可翻译字符串并更新 .pot

我继承了一个sample.pot文件。现在,我在a1.c和a2.cpp中添加了新消息。我可以使用xgettext并将内容输出到同一个sample.pot而不是创建一个新的吗?例如:-xgettext-dsample-s-osample.pota1.cxgettext-dsample-s-osample.pota2.cpp这是为了更新模板以保留旧消息的首选方式吗?另一个问题是我们如何区分源代码中的可翻译字符串和普通字符串。我假设xgettext将从提到的源代码文件中提取所有字符串。如果有人能分享正确的方法就太好了..谢谢 最佳答案 -

c++ - 如何使用棋盘找到两个摄像机之间的旋转/平移

我正在将opencv与C一起使用,我正在尝试获取2个摄像头之间的外部参数(旋转和平移)。有人告诉我可以使用棋盘格图案进行校准,但我找不到任何好的样本。我该怎么做?编辑给出的建议是用棋盘标定单个相机。给定来自两个View的棋盘图像,您如何找到两个相机之间的旋转和平移? 最佳答案 我使用的代码来自http://www.starlino.com/opencv_qt_stereovision.html.它有一些有用的信息,作者的代码很容易理解和分析,它涵盖了两者——棋盘校准和从立体相机获取深度图像。我认为它基于thisOpenCVbook

c++ - 从 3d 对象开始

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭3年前。Improvethisquestion我刚开始使用C++,并且想使用3d对象进行编程。现在我可以使用C++或ObjectiveC,这无关紧要。3d对象有哪些书籍比较好?我想加载由3d应用程序创建的3d对象/文件,然后操作3d对象。在屏幕上移动它,旋转它等等。从哪里开始学习这个好?一本书、教程等。

c++ - 如何选择 libc6 或 libc6-dbg

我正在检查一个c程序并想安装valgrind,然后系统告诉我我还应该安装带有调试符号libc6-dbg的libc6。现在我的问题是,以后用gcc编译时,会用到哪个版本的libc?我如何选择我正在编译的libc6?我不是在问如何安装这个,我在ubuntu上,所以apt-getinstalllibc6-dbg就可以了。 最佳答案 libc6-dbg不是与libc6分开的库—它是libc6的调试符号,因此您可以在其中获得准确的回溯库。 关于c++-如何选择libc6或libc6-dbg,我们在

c++ - 将 c 项目转换为桌面应用程序

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我创建了一个使用opencv库的c/c++程序。我想将其转换为桌面应用程序,只需将其安装在任何系统上即可运行。也可以做到让用户安装软件不需要opencv。我的意思是它与软件打包在一起这是如何完成的,您能指出一些好书或教程吗?我也想创建GUI,对此有何建议我想为Windows和Linux创建软件。